package cn.wqk.rrtf.mapper;

import cn.wqk.rrtf.pojo.Article;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

import java.util.List;
@Mapper
@Repository
public interface ArticleMapper {
    /**
     * 查询所有文章
     * @return 文章集合
     */
    List<Article> selectAllArticle();

    /**
     * 根据文章条件查询：分类编号/文章编号/用户ID查询文章
     * @param article
     * @return 文章集合
     */
    List<Article> selectArticleByCondition(Article article);

    /**
     * 增加文章
     * @param article
     * @return
     */
    int insertArticle(Article article);

    /**
     * 删除文章
     * @param articleId
     * @return
     */
    int deleteArticle(Integer articleId);

    /**
     * 修改文章
     * @param article
     * @return
     */
    int updateArticle(Article article);

    /**
     * 查询所有文章分类
     * @return 类型集合
     */
    List<String> selectAllArticleType();

    /**
     * 根据用户编号查询用户拥有的文章
     * @param userId 用户编号
     * @return
     */
    List<Article> selectPublishArticleByUserId(Integer userId);

    /**
     * 根据收藏表中的用户编号查询文章
     * @param userId 用户编号
     * @return
     */
    List<Article> selectCollectArticleByUserId(Integer userId);

}
